<html>
<head><meta charset="utf-8"><title>const prop `len` function on unpropped arrays · t-compiler/wg-mir-opt · Zulip Chat Archive</title></head>
<h2>Stream: <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/index.html">t-compiler/wg-mir-opt</a></h2>
<h3>Topic: <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html">const prop `len` function on unpropped arrays</a></h3>

<hr>

<base href="https://rust-lang.zulipchat.com">

<head><link href="https://rust-lang.github.io/zulip_archive/style.css" rel="stylesheet"></head>

<a name="176507012"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507012" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507012">(Sep 24 2019 at 21:14)</a>:</h4>
<p><span class="user-mention" data-user-id="125250">@Wesley Wiser</span> idea by <span class="user-mention" data-user-id="116266">@Santiago Pastorino</span>: if we have a runtime value of array type and we call <code>len</code> on it, we should still const prop that call, because its result is obviously known</p>



<a name="176507028"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507028" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507028">(Sep 24 2019 at 21:14)</a>:</h4>
<p>I think it can be done without much additional magic</p>



<a name="176507080"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507080" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507080">(Sep 24 2019 at 21:15)</a>:</h4>
<p>some magic may still be required in the unsizing cast</p>



<a name="176507096"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507096" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507096">(Sep 24 2019 at 21:15)</a>:</h4>
<p>basically the data pointer would be <code>Undef</code> and only the length would be set</p>



<a name="176507115"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507115" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507115">(Sep 24 2019 at 21:15)</a>:</h4>
<p>I feel like I looked at writing an optimization to do that like a year ago and found it already happened.</p>



<a name="176507126"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507126" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507126">(Sep 24 2019 at 21:16)</a>:</h4>
<p>something similar could be done for vtable casts</p>



<a name="176507183"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507183" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507183">(Sep 24 2019 at 21:16)</a>:</h4>
<p>huh</p>



<a name="176507236"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507236" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507236">(Sep 24 2019 at 21:17)</a>:</h4>
<p><a href="https://play.rust-lang.org/?version=stable&amp;mode=debug&amp;edition=2018&amp;gist=122730c2a83131198a16080ac6f7a562" target="_blank" title="https://play.rust-lang.org/?version=stable&amp;mode=debug&amp;edition=2018&amp;gist=122730c2a83131198a16080ac6f7a562">https://play.rust-lang.org/?version=stable&amp;mode=debug&amp;edition=2018&amp;gist=122730c2a83131198a16080ac6f7a562</a></p>



<a name="176507239"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507239" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507239">(Sep 24 2019 at 21:17)</a>:</h4>
<p>we don't even propagate function calls yet, so I don't see how that could happen (well in llvm it probably will)</p>



<a name="176507252"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507252" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507252">(Sep 24 2019 at 21:17)</a>:</h4>
<p>Unless I'm misunderstanding the case you're thinking of</p>



<a name="176507256"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507256" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507256">(Sep 24 2019 at 21:17)</a>:</h4>
<p>ah</p>



<a name="176507274"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507274" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507274">(Sep 24 2019 at 21:17)</a>:</h4>
<p>yes the <code>Len</code> statement works</p>



<a name="176507320"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507320" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507320">(Sep 24 2019 at 21:18)</a>:</h4>
<p>I literally mean <code>[T]::len</code></p>



<a name="176507324"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507324" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507324">(Sep 24 2019 at 21:18)</a>:</h4>
<p>Ah</p>



<a name="176507326"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507326" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507326">(Sep 24 2019 at 21:18)</a>:</h4>
<p>so if the user writes <code>some_arg.len()</code></p>



<a name="176507330"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507330" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507330">(Sep 24 2019 at 21:18)</a>:</h4>
<p>Gotcha</p>



<a name="176507362"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507362" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507362">(Sep 24 2019 at 21:18)</a>:</h4>
<p>though it may just work</p>



<a name="176507397"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507397" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507397">(Sep 24 2019 at 21:19)</a>:</h4>
<p>since the miri engine may do the unsizing cast without ever checking whether the pointer is Undef</p>



<a name="176507418"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507418" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507418">(Sep 24 2019 at 21:19)</a>:</h4>
<p>We've got to get const prop turned on for <code>mir-level &lt; 2</code> first :p</p>



<a name="176507452"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507452" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507452">(Sep 24 2019 at 21:19)</a>:</h4>
<p>As it is, miri and <code>src/test/mir-opt</code> are pretty much the only things that actually do the optimization.</p>



<a name="176507527"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507527" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507527">(Sep 24 2019 at 21:20)</a>:</h4>
<p>whoops</p>



<a name="176507542"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507542" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507542">(Sep 24 2019 at 21:20)</a>:</h4>
<p>I don't remember the blockers for that</p>



<a name="176507557"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507557" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507557">(Sep 24 2019 at 21:21)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/blob/6ef275e6c3cb1384ec78128eceeb4963ff788dca/src/librustc_mir/interpret/cast.rs#L256" target="_blank" title="https://github.com/rust-lang/rust/blob/6ef275e6c3cb1384ec78128eceeb4963ff788dca/src/librustc_mir/interpret/cast.rs#L256">https://github.com/rust-lang/rust/blob/6ef275e6c3cb1384ec78128eceeb4963ff788dca/src/librustc_mir/interpret/cast.rs#L256</a> yay, the engine does the right thing</p>



<a name="176507559"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507559" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507559">(Sep 24 2019 at 21:21)</a>:</h4>
<p>I don't know either</p>



<a name="176507565"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507565" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507565">(Sep 24 2019 at 21:21)</a>:</h4>
<p>lol</p>



<a name="176507576"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507576" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507576">(Sep 24 2019 at 21:21)</a>:</h4>
<p>so we just need to start const propping arguments now?! XD</p>



<a name="176507599"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507599" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507599">(Sep 24 2019 at 21:21)</a>:</h4>
<p>Once we do function calls, we can do that I think</p>



<a name="176507668"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507668" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507668">(Sep 24 2019 at 21:22)</a>:</h4>
<p>oh, for function calls we don't need to do any argument propping</p>



<a name="176507682"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507682" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507682">(Sep 24 2019 at 21:22)</a>:</h4>
<p>we never do any const prop for function call bodies, that will be all in the miri engine</p>



<a name="176507712"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507712" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Santiago Pastorino <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507712">(Sep 24 2019 at 21:23)</a>:</h4>
<p>all these stuff seems exciting :)</p>



<a name="176507803"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507803" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507803">(Sep 24 2019 at 21:24)</a>:</h4>
<p>Well this at least was motivated because doing things with args in <code>ConstProp</code> was ICE-ing the compiler <a href="https://github.com/rust-lang/rust/pull/64419/commits/281cfbf6c38b3d9b3d50b48857e48dab93a0f3aa" target="_blank" title="https://github.com/rust-lang/rust/pull/64419/commits/281cfbf6c38b3d9b3d50b48857e48dab93a0f3aa">https://github.com/rust-lang/rust/pull/64419/commits/281cfbf6c38b3d9b3d50b48857e48dab93a0f3aa</a></p>



<a name="176507884"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507884" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507884">(Sep 24 2019 at 21:25)</a>:</h4>
<p>Er, I guess the better link was my original change</p>



<a name="176507886"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507886" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507886">(Sep 24 2019 at 21:25)</a>:</h4>
<p><a href="https://github.com/rust-lang/rust/pull/64419/commits/39d6305ef918858ae871da815040ebfc91612a49" target="_blank" title="https://github.com/rust-lang/rust/pull/64419/commits/39d6305ef918858ae871da815040ebfc91612a49">https://github.com/rust-lang/rust/pull/64419/commits/39d6305ef918858ae871da815040ebfc91612a49</a></p>



<a name="176507922"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176507922" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176507922">(Sep 24 2019 at 21:25)</a>:</h4>
<p>Since that shows the conversation</p>



<a name="176508005"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176508005" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> Wesley Wiser <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176508005">(Sep 24 2019 at 21:26)</a>:</h4>
<p>Anyway I've got to run <span aria-label="wave" class="emoji emoji-1f44b" role="img" title="wave">:wave:</span></p>



<a name="176508010"></a>
<h4><a href="https://rust-lang.zulipchat.com#narrow/stream/189540-t-compiler/wg-mir-opt/topic/const%20prop%20%60len%60%20function%20on%20unpropped%20arrays/near/176508010" class="zl"><img src="https://rust-lang.github.io/zulip_archive/assets/img/zulip.svg" alt="view this post on Zulip" style="width:20px;height:20px;"></a> oli <a href="https://rust-lang.github.io/zulip_archive/stream/189540-t-compiler/wg-mir-opt/topic/const.20prop.20.60len.60.20function.20on.20unpropped.20arrays.html#176508010">(Sep 24 2019 at 21:26)</a>:</h4>
<p><span aria-label="wave" class="emoji emoji-1f44b" role="img" title="wave">:wave:</span></p>



<hr><p>Last updated: Aug 07 2021 at 22:04 UTC</p>
</html>